package com.itheima.test2;

/*
    1. 成员变量私有
    2. 私有成员提供对应的get/set方法
    3. 无参构造手动给出
    4. 满参构造手动给出
 */
//核心点: 成员变量私有,私有成员提供对应get/set
public class Student {
    //属性: 有什么 -- 需要具备隐私性,安全性
    //被private修饰的内容,只能在当前类中被访问
    private String name;
    private int age;
    private boolean sex;    //性别: true: 男   false: 女

    //当我们一个类没有提供任何构造时,jvm会送我们一个默认的无参构造,如果我们手动给出了构造方法,jvm就不会再送这个无参构造了
    //构造方法执行时机: 每创建一个对象,就会执行一次对应的构造方法
    //作用: 就是用来创建对象的. 理解为生活中的: 顺产功能
    public Student(){
        System.out.println("我是无参构造");
    }

    //带参构造【满参构造】
    //好处: 在创建对象时,一行语句就给所有成员进行初始化赋值
    //理解为剖腹产方法
    public Student(String name, int age) {
        System.out.println("我是满参构造");
        this.name = name;
        this.age = age;
    }


    public boolean isSex() {
        return sex;
    }

    public void setSex(boolean sex) {
        this.sex = sex;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }
//1. 方法中的成员变量默认前面都隐含了this. ,咱们不写,jvm编译的时候会自动加


    //2. 方法中的this表示谁?   -- 谁调用我,我就表示谁,表示的当前调方法的对象
    public void show(){
        System.out.println(this.name + "..." + this.age);
    }
}
